﻿/**
 * prism.js Dark theme for JavaScript, CSS and HTML
 * Based on the slides of the talk “/Reg(exp){2}lained/”
 * @author Lea Verou
 */

code[class*="language-"],
pre[class*="language-"] {
    color: white;
    background: none;
    font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}

@media print {
    code[class*="language-"],
    pre[class*="language-"] {
        text-shadow: none;
    }
}

pre[class*="language-"],
:not(pre) > code[class*="language-"] {
    background: hsl(30, 20%, 25%);
}

/* Code blocks */
pre[class*="language-"] {
    padding: 1em;
    margin: .5em 0;
    overflow: auto;
    border-radius: .5em;
}

/* Inline code */
:not(pre) > code[class*="language-"] {
    padding: .15em .2em .05em;
    border-radius: .3em;
    white-space: normal;
}

.token {

    &.comment, &.prolog, &.token.doctype, &.token.cdata {
        color: hsl(30, 20%, 50%);
    }

    &.punctuation {
        opacity: .7;
    }

    &.property, &.tag, &.boolean, &.constant, &.symbol {
        color: @token-boolean;
    }
    
    &.number {
        color: @token-number;
    }

    &.selector, &.attr-name, &.string, &.char, &.builtin, &.inserted {
        color: @token-string;
    }

    &.operator, &.entity, &.url, &.variable {
        color: @token-operator;
    }

    &.atrule, &.attr-value, &.keyword {
        color: @token-keyword;
    }

    &.regex, &.important {
        color: @token-important;
    }

    &.deleted {
        color: @token-deleted;
    }

    &.important,
    &.bold {
        font-weight: bold;
    }

    &.italic {
        font-style: italic;
    }

    &.entity {
        cursor: help;
    }
}

.namespace {
    opacity: .7;
}


